ADO Command 對象
作者:tank 日期:2006-10-23
ADO Command 對象
Command 對像定義了將對資料源執行的指定命令。
使用 Command 對象查詢資料庫並返回 Recordset 對像中的記錄,以便執行大量操作或處理資料庫結構。取決於提供者的功能,某些 Command 集合、方法或屬性被引用時可能會產生錯誤。
可以使用 Command 對象的集合、方法、屬性進行下列操作:
使用 CommandText 屬性定義命令(例如,SQL 語句)的可執行文本。
通過 Parameter 對像和 Parameters 集合定義參數化查詢或存儲過程參數。
可使用 Execute 方法執行命令並在適當的時候返回 Recordset 對象。
執行前應使用 CommandType 屬性指定命令類型以優化性能。
使用 Prepared 屬性決定提供者是否在執行前保存準備好(或編譯好)的命令版本。
使用 CommandTimeout 屬性設置提供者等待命令執行的秒數。
通過設置 ActiveConnection 屬性使打開的連接與 Command 對像關聯。
設置 Name 屬性將 Command 標識為與 Connection 對像關聯的方法。
將 Command 對像傳送給 Recordset 的 Source 屬性以便獲取資料。
注意 如果不想使用 Command 對像執行查詢,請將查詢字元串傳送給Connection 對象的 Execute 方法或 Recordset 對象的 Open 方法。但是,當需要使命令文本具有持久性並重新執行它,或使用查詢參數時,則必須使用 Command 對象。
要獨立於先前已定義的 Connection 對像建立 Command 對象,請將它的 ActiveConnection 屬性設置為有效的連接字元串。ADO 仍將建立 Connection 對象,但它不會將該對像賦給對像變量。但是,如果正在將多個 Command 對象與同一個連接關聯,則必須顯式建立並打開 Connection 對象,這樣即可將 Connection 對像賦給對像變量。如果沒有將 Command 對象的 ActiveConnection 屬性設置為該對像變量,則即使使用相同的連接字元串,ADO 也將為每個 Command 對像建立新的 Connection 對象。
要執行 Command,只需通過它所關聯的 Connection 對象的 Name 屬性,將其簡單調用即可。必須將 Command 的 ActiveConnection 屬性設置為 Connection 對象。如果 Command 帶有參數,則將這些參數的值作為參數傳送給方法。
如果在相同連接上執行兩個或多個 Command 對象,並且某個 Command 對象是帶輸出參數的存儲過程,這時會發生錯誤。要執行各個 Command 對象,請使用獨立的連接或將所有其他 Command 對象的連接斷開。
================================================
<%
Set conn = Server.CreateObject("ADODB.Connection")
Set cmd = Server.CreateObject("ADODB.Command")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("db1.mdb")
cmd.ActiveConnection = conn
'ActiveConnection屬性使打開的連接與 Command 對像關聯
cmd.CommandText = "getdata"
'CommandText 屬性定義命令,可在ACCESS的查詢表中建立查詢表(表名亦即存儲過程名稱),或直接書寫SQL語句
Set rs = cmd.Execute
'Execute 方法執行命令並在適當的時候返回 Recordset 對像
'..............
'應用rs,可輸出記錄
%>
![Loading Vote](/Plugins/ArticleVote/sendVote.gif)